using System.ComponentModel.Composition;
using Caliburn.Micro;
using MediaOwl.Common.ScreenManagement;
using MediaOwl.Resources;

namespace MediaOwl.ViewModels
{
    [Export(typeof(IShell))]
    public sealed class ShellViewModel : ExtendedConductor<IScreen>, IShell
    {
        #region Fields
        private readonly ModuleViewModel moduleViewModel;
        #endregion

        #region Constructor

        [ImportingConstructor]
        public ShellViewModel(ModuleViewModel moduleViewModel)
        {
            this.moduleViewModel = moduleViewModel;
            DisplayName = Captions.AppTitle;
        }

        #endregion

        #region Methods

        protected override void OnInitialize()
        {
            base.OnInitialize();

            ActivateItem(moduleViewModel);
        }

        #endregion
    }
}